package com.zoncont.estate.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zoncont.common.core.domain.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 公司表 oa_company
 *
 * @author zoncont.ahanu
 * @date 2019-04-19
 */
public class Company extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 公司ID */
    private Integer companyId;
    /** 公司标识 */
    private String orgId;
    /** 公司名 */
    private String orgName;
    /** 状态（0试用期1正常2已停用） */
    private String status;
    /** 试用到期时间 */
    private Date expiredDate;
    /** 服务器地址 */
    private String companyIp;
    /** 服务器端口 */
    private String companyPort;
    /** 公司登录码 */
    private String companyAccount;
    /** 申请区域 */
    private String applyArea;
    /** 申请人 */
    private String applyName;
    /** 申请人电话 */
    private String applyPhone;
    /** 公司ID */
    private String compId;
    /** 物业系统到期时间 */
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @JsonFormat(pattern="yyyy-MM-dd")
    private Date estateData;
    /** 物业系统IP */
    private String estateIp;
    /** 物业系统小程序URL */
    private String estateAppletUrl;
    /** 物业资产上限 */
    private BigDecimal estateMoney;
    /** 备注 */
    private String remark;
    /** 创建者 */
    private String createBy;
    /** 创建时间 */
    private Date createTime;
    /** 更新者 */
    private String updateBy;
    /** 更新时间 */
    private Date updateTime;

    public String getEstateAppletUrl() {
        return estateAppletUrl;
    }

    public void setEstateAppletUrl(String estateAppletUrl) {
        this.estateAppletUrl = estateAppletUrl;
    }

    public void setCompanyId(Integer companyId) {
        this.companyId = companyId;
    }

    public Integer getCompanyId() {
        return companyId;
    }

    public void setOrgId(String orgId) {
        this.orgId = orgId;
    }

    public String getOrgId() {
        return orgId;
    }

    public void setOrgName(String orgName) {
        this.orgName = orgName;
    }

    public String getOrgName() {
        return orgName;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getStatus() {
        return status;
    }

    public void setExpiredDate(Date expiredDate) {
        this.expiredDate = expiredDate;
    }

    public Date getExpiredDate() {
        return expiredDate;
    }

    public void setCompanyIp(String companyIp) {
        this.companyIp = companyIp;
    }

    public String getCompanyIp() {
        return companyIp;
    }

    public void setCompanyPort(String companyPort) {
        this.companyPort = companyPort;
    }

    public String getCompanyPort() {
        return companyPort;
    }

    public void setCompanyAccount(String companyAccount) {
        this.companyAccount = companyAccount;
    }

    public String getCompanyAccount() {
        return companyAccount;
    }

    public void setApplyArea(String applyArea) {
        this.applyArea = applyArea;
    }

    public String getApplyArea() {
        return applyArea;
    }

    public void setApplyName(String applyName) {
        this.applyName = applyName;
    }

    public String getApplyName() {
        return applyName;
    }

    public void setApplyPhone(String applyPhone) {
        this.applyPhone = applyPhone;
    }

    public String getApplyPhone() {
        return applyPhone;
    }

    public void setCompId(String compId) {
        this.compId = compId;
    }

    public String getCompId() {
        return compId;
    }

    public void setEstateData(Date estateData) {
        this.estateData = estateData;
    }

    public Date getEstateData() {
        return estateData;
    }

    public void setEstateIp(String estateIp) {
        this.estateIp = estateIp;
    }

    public String getEstateIp() {
        return estateIp;
    }

    public void setEstateMoney(BigDecimal estateMoney) {
        this.estateMoney = estateMoney;
    }

    public BigDecimal getEstateMoney() {
        return estateMoney;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getRemark() {
        return remark;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("companyId", getCompanyId())
                .append("orgId", getOrgId())
                .append("orgName", getOrgName())
                .append("status", getStatus())
                .append("expiredDate", getExpiredDate())
                .append("companyIp", getCompanyIp())
                .append("companyPort", getCompanyPort())
                .append("companyAccount", getCompanyAccount())
                .append("applyArea", getApplyArea())
                .append("applyName", getApplyName())
                .append("applyPhone", getApplyPhone())
                .append("compId", getCompId())
                .append("estateData", getEstateData())
                .append("estateIp", getEstateIp())
                .append("estateMoney", getEstateMoney())
                .append("remark", getRemark())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .toString();
    }
}
